<!DOCTYPE html>
<html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-0 vector-toc-not-available vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-0 skin-theme-clientpref-day vector-sticky-header-enabled" lang="de" dir="ltr"><head>
<meta charset="UTF-8">
<title>Pruning</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/png" href="./_res_/favicon.png">
<link rel="canonical" href="https://de.wikipedia.org/wiki/Pruning"> <link href="./_mw_/ext.wikimediamessages.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link href="./_mw_/ext.gadget.citeRef.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.defaultPlainlinks.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonHide.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonLayout.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonStyle.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiDarkmode.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiResponsive.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.specialSearch.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
<link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
<link rel="stylesheet" type="text/css" href="./_res_/footer.css">
<link rel="stylesheet" type="text/css" href="./_res_/vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Pruning rootpage-Pruning skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">Pruning</span></h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="contentSub">
<div id="mw-content-subtitle"></div>
</div>
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="de" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="de" dir="ltr">
<p><b>Pruning</b> ist der <a href="Englische_Sprache" title="Englische Sprache">englische</a> Ausdruck für das Beschneiden (Zurechtstutzen) von Bäumen und Sträuchern. In der <a href="Informatik" title="Informatik">Informatik</a> im Umfeld des maschinellen Lernens wird der Ausdruck für das <a href="Vereinfachung_von_Entscheidungsb%C3%A4umen" title="Vereinfachung von Entscheidungsbäumen">Vereinfachen</a>, Kürzen und Optimieren von <a href="Entscheidungsbaum" title="Entscheidungsbaum">Entscheidungsbäumen</a> verwendet.
</p><p>Die Idee des Pruning entstammt ursprünglich aus dem Versuch, das sog. <a href="Overfitting" class="mw-redirect" title="Overfitting">Overfitting</a> bei Bäumen zu verhindern, die durch induziertes Lernen entstanden sind. Overfitting bezeichnet die unerwünschte Induktion von Noise in einem Baum. Noise bezeichnet falsche Attributwerte oder Klassenzugehörigkeiten, welche Datensets verfälschen und so Entscheidungsbäume unnötig vergrößern. Durch das Pruning der Bäume werden die unnötigen Sub-Bäume wieder gekürzt.
</p>
<div class="mw-heading mw-heading2"><h2 id="Pruning_im_Umfeld_des_maschinellen_Lernens">Pruning im Umfeld des maschinellen Lernens</h2></div>
<p>Pruningverfahren lassen sich nach zwei Arten teilen (Pre- und Post-Pruning).
</p><p>Pre-Pruning-Verfahren verhindern eine vollständige Induktion des Training-Sets durch Austausch eines Stopp()-Kriteriums im Induktionsalgorithmus (z. B. max. Baumtiefe oder Information Gain(Attr) > minGain). Pre-Pruning-Methoden gelten als effizienter, da dabei nicht ein gesamtes Set induziert wird, sondern Bäume von Beginn an klein bleiben. Prepruning-Methoden haben ein gemeinsames Problem, den Horizont-Effekt. Darunter ist das unerwünschte, vorzeitige Abbrechen der Induktion durch das Stopp()-Kriterium zu verstehen.
</p><p>Post-Pruning (oder nur Pruning) ist das häufigst eingesetzte Verfahren, Bäume zu vereinfachen. Dabei werden Knoten und Teilbäume durch Blätter ersetzt, um die Komplexität zu verbessern. Durch Pruning lässt sich nicht nur die Größe entscheidend verringern, sondern auch die Klassifizierungsgenauigkeit ungesehener Objekte verbessern. Zwar kann es der Fall sein, dass die Genauigkeit der Zuordnung am Testset schlechter wird, die Treffsicherheit der Klassifizierungseigenschaften des Baumes jedoch insgesamt steigt.
</p><p>Die Verfahren werden anhand deren Vorgehensweise im Baum (Top-Down bzw. Bottom-Up) unterschieden.
</p>
<div class="mw-heading mw-heading3"><h3 id="Bottom-Up-Pruning">Bottom-Up-Pruning</h3></div>
<p>Diese Verfahren starten am letzten Knoten im Baum (an der tiefsten Stelle). Rekursiv nach oben folgend bestimmen sie die Relevanz jedes einzelnen Knotens. Ist die Relevanz für die Klassifizierung nicht gegeben, fällt der Knoten weg bzw. wird durch ein Blatt ersetzt. Der Vorteil ist, dass durch dieses Verfahren keine relevanten Sub-Bäume verloren gehen können.
Zu diesen Verfahren zählt das Reduced Error Pruning (REP), das Minimum Cost-Complexity-Pruning (MCCP) oder das Minimum Error Pruning (MEP).
</p>
<div class="mw-heading mw-heading3"><h3 id="Top-Down-Pruning">Top-Down-Pruning</h3></div>
<p>Im Gegensatz zum Bottom-Up-Verfahren setzt diese Methodik an der Wurzel des Baumes an. Der Struktur nach unten folgend wird ein Relevanz-Check durchgeführt, welcher entscheidet, ob ein Knoten für die Klassifizierung aller n Items relevant ist oder nicht. Durch Beschneiden des Baums an einem inneren Knoten kann es passieren, dass ein gesamter Sub-Baum (ungeachtet dessen Relevanz) wegfällt. Zu diesen Vertretern gehört das Pessimistic Error Pruning (PEP), welches durchaus gute Resultate bei ungesehenen Items bringt.
</p>
<div class="mw-heading mw-heading2"><h2 id="Suchverfahren">Suchverfahren</h2></div>
<p>Bei <a href="Suchverfahren" title="Suchverfahren">Suchverfahren</a> verwendet man verschiedene Pruning-Methoden zur Vorwärtsabschneidung von Suchbäumen, wenn der <a href="Algorithmus" title="Algorithmus">Algorithmus</a> auf Grund der bereits gesammelten Daten weiß (bzw. bei spekulativem Pruning davon ausgeht), dass diese Teilbäume das gesuchte Objekt nicht enthalten (angewandt zum Beispiel bei <a href="Schachprogramm" title="Schachprogramm">Schachprogrammen</a>).
</p><p>Wichtige Pruning-Techniken für <a href="Minimax-Algorithmus" title="Minimax-Algorithmus">Minimax-</a> oder <a href="Alpha-Beta-Suche" title="Alpha-Beta-Suche">Alpha-Beta-Suchen</a>, die zur Lösung von Zwei-Personen-<a href="Nullsummenspiel" title="Nullsummenspiel">Nullsummenspielen</a> mit vollständiger Information (wie zum Beispiel Schach) eingesetzt werden können, sind zum Beispiel:
</p>
<ul><li><a href="Null-Zug-Suche" title="Null-Zug-Suche">Nullmove Pruning</a></li>
<li><a href="Null-Zug-Suche" title="Null-Zug-Suche">Verified Nullmove Pruning</a></li>
<li><a href="Alpha-Beta-Suche#Killer-Heuristik" title="Alpha-Beta-Suche">Killer-Heuristik</a></li>
<li>History-Heuristik</li></ul>
<p>Pruning wird auch in <a href="Branch-and-Bound" title="Branch-and-Bound">Branch-and-Bound</a>-Algorithmen in der <a href="Optimierung_(Mathematik)" class="mw-redirect" title="Optimierung (Mathematik)">mathematischen Optimierung</a> angewandt. Hier wird ein Teilbaum des Suchbaums nicht betrachtet, falls die Schranke für die beste mögliche Lösung in diesem Teilbaum schlechter ist als eine bereits bekannte Lösung.
</p>
<div class="mw-heading mw-heading2"><h2 id="Weitere_Gebiete">Weitere Gebiete</h2></div>
<p>Bei <a href="Forensoftware" class="mw-redirect" title="Forensoftware">Forensoftware</a> ist Pruning eine Einstellung, die das automatische Löschen von alten Themen (Topics) bewirkt, um Speicherplatz zu sparen, die <a href="CPU-Last" class="mw-redirect" title="CPU-Last">CPU-Last</a> zu verringern und dadurch die Schnelligkeit des Forums zu erhöhen.
</p>
<div class="mw-heading mw-heading2"><h2 id="Quellenverweise">Quellenverweise</h2></div>
<ul><li>L. A. Breslow and D. W. Aha, Simplifying Decision Trees: A Survey, The Knowledge Engineering Review, Vol 12 (1), 1997, pp. 1–47.</li>
<li>J. R. Quinlan, Induction of Decision Trees, Machine Learning 1, Kluwer Academic Publishers, 1986, pp. 81–106.</li></ul></div><!--htdig_noindex--><div><div class="zim-footer">
Dieser Artikel wurde von <a class="external text" title="Zuletzt bearbeitet am 2018-08-30" href="https://de.wikipedia.org/wiki/?title=Pruning&oldid=180478359">Wikipedia</a> herausgegeben. Der Text ist unter <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.de">Creative Commons Attribution-Share Alike 4.0</a> verfügbar, sofern nicht anders angegeben. Für die Mediendateien können zusätzliche Bedingungen gelten.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
<script src="./_webp_/webpHandler.js"></script>
</body></html>